﻿#define _CRT_SECURE_NO_WARNINGS
//作者：宋安康
#include<stdio.h>

//strtok 函数的使用
//char * strtok ( char * str, const char * sep);
//sep参数指向⼀个字符串，定义了⽤作分隔符的字符集合
//int main()
//{
//	char arr[] = "zhangsan@1234.com.hehe";
//	char arr2[30] = {0};
//	strcpy(arr2,arr);
//	const char* p = "@.#";
//	char* s = NULL;
//
//	//char* s = strtok(arr2,p);
//	//printf("%s\n",s);
//	//s = strtok(NULL,p);   //strtok函数的第⼀个参数为 NULL ，函数将在同⼀个字符串中被保存的位置开始，查找下⼀个标记。
//	//printf("%s\n",s);
//	//s = strtok(NULL, p);
//	//printf("%s\n", s);
//
//	//初始化部分只执行一次
//	for (s = strtok(arr2, p);s != NULL ;s = strtok(NULL,p))
//	{
//		printf("%s\n",s);
//		//如果字符串中不存在更多的标记，则返回 NULL 指针
//	}
//	return 0;
//}

//strerror 函数的使⽤
//char * strerror ( int errnum );
//int main() 
//{
//	int i = 0;
//	for ( i; i < 10; i++)
//	{
//		printf("%d: %s\n",i,strerror(i));
//	}
//	return 0;
//}

#include <stdio.h>
#include <string.h>
#include <errno.h>
//int main()
//{
//	FILE* pFile;   //返回类型是一个指针
//	pFile = fopen("sak.txt", "r");   //打开文件
//	if (pFile == NULL)
//		printf("Error opening file unexist.ent: %s\n", strerror(errno));
//	else
//		printf("成功\n");
//	return 0;
//
//}


//perror函数
//int main()
//{
//	FILE* pFile;   //返回类型是一个指针
//	pFile = fopen("sak.txt", "r");   //打开文件
//	if (pFile == NULL)
//		perror("Error opening file unexist.ent");
//	else
//		printf("成功\n");
//	return 0;
//
//}

//C语言内存函数
//memcpy 使⽤和模拟实现
//void * memcpy ( void * destination, const void * source, size_t num );
//拷贝的是各种各样的数据
int main() 
{
	/*int arr[10] = {1,2,3,4,5,6,7,8,9,10};
	int arr2[10] = {0};*/
	char arr[20] = "hello world";
	char arr2[10] = { 0 };
	//将arr中前五个拷贝到arr2
	//4,5,6,7,8,9
	memcpy(arr2, arr+3, 5 * sizeof(int));
	for (int i = 0; i < 10; i++)
	{
		printf("%d ",arr2[i]);
	}
	return 0;
}